#ifndef __LIT__EXCEPTION__TYPES__HH__
#define __LIT__EXCEPTION__TYPES__HH__

namespace Lit
{
	enum ExceptionType
	{
		EXC_UNKNOWN = 0x0,
			
		EXC_RUNTIME_ERROR = 1<<1,
		EXC_LOGIC_ERROR = 1<<2,
		EXC_INIT_ERROR = 1<<3,
			EXC_COMPONENT_ERROR = 1<<4,
			EXC_RENDER_ERROR = 1<<5,
		EXC_SHUTDOWN_ERROR = 1<<6,

		EXC_CAST_ERROR = 1<<7,

		EXC_ITEM_DUPLICATE = 1<<8,
		EXC_ITEM_MISSING = 1<<9,

		EXC_FILE_MISSING = 1<<10,
		EXC_FILE_DUPLICATE = 1<<11,

		EXC_CONSOLE_ERROR = 1<<12,
		EXC_IMPLEMENTATION_MISSING = 1<<13,
		EXC_IO_ERROR = 1<<14,
		EXC_SCRIPT_ERROR = 1<<15,
		EXC_SCRIPT_PREPROCESSOR_ERROR = 1<<16,
	};
};

#endif